package com.lazily.enume_;


/**
 * @Author: GZQ
 * @date: 2025/2/16 16:09
 * @description: 使用 enum 关键字实现枚举
 */

public class Enumeration03 {
	// 程序入口
	public static void main(String[] args) {
		System.out.println(Season2.SPRING);
		System.out.println(Season2.SUMMER);
	}
}

enum Season2 {
	// 如果使用了enum 来实现枚举类
	// 1. 使用关键字 enum 替代 class
	// 2. public final static Season SPRING = new Season("春天", "温暖") 直接使用
	// SPRING("春天", "温暖");  解读 常量名(实参列表)
	// 3. 如果有多个常量(对象), 使用, 号间隔即可
	// 4. 如果使用enum 来实现枚举, 要求将定义常量对象, 写在前面
	// 5. 如果我们使用的是无参构造器，创建常量对象，则可以省略 ()
	SPRING("春天", "温暖"),
	SUMMER("夏天", "炎热"),
	AUTUMN("秋天", "凉爽"),
	WINTER("冬天", "寒冷"), What;
	private String name;
	private String desc; // 描述

	private Season2() { // 无参构造器

	}

	private Season2(String name, String desc) {
		this.name = name;
		this.desc = desc;
	}

	public String getName() {
		return name;
	}


	public String getDesc() {
		return desc;
	}

	@Override
	public String toString() {
		return "Season{" +
				"name='" + name + '\'' +
				", desc='" + desc + '\'' +
				'}';
	}
}